今天要來學習的是針對目標主機的狀態進行掃描,確認主機的狀態對於網路滲透測試是相當重要的一部分,如果主機根本沒開機,那網路安全滲透測試的意義在哪?所以為了確定主機是正在執行狀態且功能正常的「活躍主機」,我們必須掃描它。
現在的網際網路通過網路通訊協定來連接,網路通訊協定就像電腦的共同語言,假設現在有一個協定(A主機跟B主機都遵守這個協定),它規定了如果A主機收到了來自B主機的「請求」資料封包,A主機就必須在一定的時間內發送「回應」的資料封包。所以建構一個「請求」然後發送給B主機,如果B主機是活躍主機,那就會收到來自它的「回應」資料封包。以下分為三種:
ARP(位址解析通訊協定)
主要用在乙太網中,所有的主機在網際網路中通訊的時候是使用IP位址,而乙太網中通訊時使用的是硬體位址(MAC位址)。日常的使用都是使用IP位址,而大部分的網路都沒有考慮過硬體位址,那這些網路在乙太網中是如何運作的呢?就是靠ARP,這個協定用來只知道IP位址的情況去發現硬體位址。
假設主機的IP為192.168.1.1,而通訊的目標IP位址為192.168.1.2,同一網路中還有兩個IP位址,這時乙太網的結構如下圖所示:
當主機只知道目標的IP位址而不知道目標主機的硬體位址時,就要使用乙太廣播包給網路上的美台主機發送ARP請求,格式如下:
協定類型:ARP Request(ARP請求)
源主機:192.168.1.1
目標主機IP位址:192.168.1.2
源主機硬體位址:11:11:11:11:11:11
目標主機MAC位址:ff:ff:ff:ff:ff:ff
其他三台主機收這個ARP請求資料封包後,會將自己的IP位址與封包中的目標主機IP位址相比,如果不符合,將不會做出回應。而相同IP位址的主機將會發送一個ARP回應資料封包,格式如下:
協定類型:ARP Reply(ARP回應)
源主機IP位址:192.168.1.2
目標主機IP位址:192.168.1.1
源主機硬體位址:22:22:22:22:22:22
目標主機MAC位址:11:11:11:11:11:11
當主機收到這個回應時,就會把結果放在ARP快取表中,格式為:
192.168.1.2 22:22:22:22:22:22 動態
以後主機在需要和192.168.1.2通訊時,只要查詢這個ARP快取表,找到對應的紀錄,
當目標主機與我們處於同。一乙太網時,利用ARP掃描是最好的選擇,因為這種掃描方式最快也最精準。也沒有任何安全措施會阻止ARP掃描方式。
今天的ARP介紹到這邊,明天將會介紹以ICMP為基礎的活躍主機發現技術。